//import java.util.Scanner;
import java.util.Scanner;


public class test {

    public static void main(String[] args) {
        func();
    }


    //day - 3  (1) 练习
    public static void func31() {
        Scanner scanner = new Scanner(System.in);

        // 注意nextLine() 是指一行字符串，中间有空格也没事 ，
        // 而scanner.next()  只会读取到一行中的空格位置
        String str = scanner.nextLine();
        //System.out.println(str);

        String cur = "";
        String ret = "";

        for (int i = 0; i < str.length(); i++) {
            char ch = str.charAt(i);
            //说明是数字
            if(ch <= '9' && ch >= '0' ) {
                cur = cur + ch + "";
            }else {
                //判断cur 和 ret 的长度
                if(cur.length() > ret.length()) {
                    ret = cur;
                    cur = "";
                }else {
                    cur = "";
                }
            }
        }
        //最后判断cur 中的长度 和 最后ret的长度
        if(cur.length() > ret.length()) {
            ret = cur;
        }
        System.out.println(cur);
    }


    //day - 4  (2)  进制转换
    public static void func() {
        Scanner scanner = new Scanner(System.in);
        int m = scanner.nextInt();
        int n = scanner.nextInt();

        //M是0 或者 负数
        if(0 == m) {
            System.out.println("0");
            return;
        }
        //负数，设置一个标志位
        boolean flg = false;
        if(m < 0) {
            m = -m;
            flg = true;
        }
        //进制超过10的，余数用ABCDEF表示
        String table = "0123456789ABCDEF";
        //频繁的使用字符串拼接，用StringBuilder
        StringBuilder stringBuilder = new StringBuilder();

        while(m != 0) {
            stringBuilder.append(table.charAt(m % n));
            m = m / n;
        }
        //判断是不是负数
        if(flg == true ) {
            stringBuilder.append("-");
        }
        //翻转
        stringBuilder.reverse();

        System.out.println(stringBuilder);
    }
}


